home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / graphics / move4 / move.bas < prev    next >
BASIC Source File  |  1995-10-22  |  8KB  |  216 lines

  1. Attribute VB_Name = "MOVE1"
  2. '                                                       '
  3. '   This example was made to show how easy it is to     '
  4. '   move and size controls in VB 2 and 3 at runtime.    '
  5. '   --> Since it's also (and still) easy enough to      '
  6. '   manage this with VB4 this is the code:              '
  7. '                                                       '
  8. ' I've put it here again to be found by all users who   '
  9. ' are using VB4 already and couldn't get the VB3 code   '
  10. ' running without optical compromises.                  '
  11. '                                                       '
  12. ' PLEASE, if you (All) have other ideas or results (!)  '
  13. ' put them where most users find it (like this here)!   '
  14. '                                                       '
  15. ' This example was again made by:                       '
  16. '     Christian Germelmann                              '
  17. '     Am Glaskopf 26                                    '
  18. '     35039 Marburg/Lahn                                '
  19. '     Germany                                           '
  20. '     Phone +049 6421 45457                             '
  21. '     CompuServe 100520,2644                            '
  22. '                                                       '
  23. ' ENJOY !!!                                             '
  24. '                                                       '
  25.  
  26.  
  27. Option Explicit
  28.  
  29.  
  30. Type POINTAPI
  31.     X As Integer
  32.     Y As Integer
  33. End Type
  34.  
  35.  
  36. Declare Function FlashWindow% Lib "USER" (ByVal hWnd%, ByVal bInvert%)
  37.  
  38. Declare Function SetWindowText% Lib "USER" (ByVal hWnd%, ByVal lpString$)
  39.  
  40. Declare Function GetWindowLong& Lib "USER" (ByVal hWnd%, ByVal nIndex%)
  41. Declare Function SetWindowLong& Lib "USER" (ByVal hWnd%, ByVal nIndex%, ByVal dwNewLong&)
  42.  
  43. Declare Sub ReleaseCapture Lib "USER" ()
  44.  
  45. Declare Function SendMessage& Lib "USER" (ByVal hWnd%, ByVal wMsg%, ByVal wParam%, ByVal lParam&)
  46. Global Const WM_SYSCOMMAND = &H112
  47. Global Const MOUSE_MOVE = &HF012
  48.  
  49. Global Const GWL_STYLE = (-16)
  50. Global Const GWL_EXSTYLE = (-20)
  51.  
  52. ' ************************
  53. ' *    Window Styles     *
  54. ' * |use with GWL_STYLE| *
  55. ' ************************
  56. Global Const WS_OVERLAPPED = &H0&
  57. Global Const WS_POPUP = &H80000000
  58. Global Const WS_CHILD = &H40000000
  59. Global Const WS_MINIMIZE = &H20000000
  60. Global Const WS_MINIMIZEBOX = &H20000
  61. Global Const WS_VISIBLE = &H10000000
  62. Global Const WS_DISABLED = &H8000000
  63. Global Const WS_CLIPSIBLINGS = &H4000000
  64. Global Const WS_CLIPCHILDREN = &H2000000
  65. Global Const WS_MAXIMIZE = &H1000000
  66. Global Const WS_MAXIMIZEBOX = &H10000
  67. Global Const WS_CAPTION = &HC00000
  68. Global Const WS_BORDER = &H800000
  69. Global Const WS_DLGFRAME = &H400000
  70. Global Const WS_VSCROLL = &H200000
  71. Global Const WS_HSCROLL = &H100000
  72. Global Const WS_SYSMENU = &H80000
  73. Global Const WS_THICKFRAME = &H40000
  74. Global Const WS_GROUP = &H20000
  75. Global Const WS_TABSTOP = &H10000
  76.  
  77. Global Const WS_TILED = WS_OVERLAPPED
  78. Global Const WS_ICONIC = WS_MINIMIZE
  79. Global Const WS_SIZEBOX = WS_THICKFRAME
  80.  
  81. ' ************************
  82. ' * Common Window Styles *
  83. ' * |use with GWL_STYLE| *
  84. ' ************************
  85. Global Const WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX)
  86. Global Const WS_POPUPWINDOW = (WS_POPUP Or WS_BORDER Or WS_SYSMENU)
  87. Global Const WS_CHILDWINDOW = (WS_CHILD)
  88. Global Const WS_TILEDWINDOW = (WS_OVERLAPPEDWINDOW)
  89.  
  90. ' **************************
  91. ' * Extended Window Styles *
  92. ' * |use with GWL_EXSTYLE| *
  93. ' **************************
  94. Global Const WS_EX_DLGMODALFRAME = &H1&
  95. Global Const WS_EX_NOPARENTNOTIFY = &H4&
  96. Global Const WS_EX_TOPMOST = &H8&
  97. Global Const WS_EX_ACCEPTFILES = &H10&
  98. Global Const WS_EX_TRANSPARENT = &H20&
  99.  
  100. ' ************************
  101. ' *    Dialog Styles     *
  102. ' * |use with GWL_STYLE| *
  103. ' ************************
  104. Global Const DS_ABSALIGN = &H1&
  105. Global Const DS_SYSMODAL = &H2&
  106. Global Const DS_LOCALEDIT = &H20&
  107. Global Const DS_SETFONT = &H40&
  108. Global Const DS_MODALFRAME = &H80&
  109. Global Const DS_NOIDLEMSG = &H100&
  110.  
  111.  
  112. ' *************************
  113. ' * Button Control Styles *
  114. ' * |use with GWL_STYLE|  *
  115. ' *************************
  116. Global Const BS_PUSHBUTTON = &H0&
  117. Global Const BS_DEFPUSHBUTTON = &H1&
  118. Global Const BS_CHECKBOX = &H2&
  119. Global Const BS_AUTOCHECKBOX = &H3&
  120. Global Const BS_RADIOBUTTON = &H4&
  121. Global Const BS_3STATE = &H5&
  122. Global Const BS_AUTO3STATE = &H6&
  123. Global Const BS_GROUPBOX = &H7&
  124. Global Const BS_USERBUTTON = &H8&
  125. Global Const BS_AUTORADIOBUTTON = &H9&
  126. Global Const BS_PUSHBOX = &HA&
  127. Global Const BS_OWNERDRAW = &HB&
  128. Global Const BS_LEFTTEXT = &H20&
  129.  
  130.  
  131. ' ************************
  132. ' *    Listbox Styles    *
  133. ' * |use with GWL_STYLE| *
  134. ' ************************
  135. Global Const LBS_NOTIFY = &H1&
  136. Global Const LBS_SORT = &H2&
  137. Global Const LBS_NOREDRAW = &H4&
  138. Global Const LBS_MULTIPLESEL = &H8&
  139. Global Const LBS_OWNERDRAWFIXED = &H10&
  140. Global Const LBS_OWNERDRAWVARIABLE = &H20&
  141. Global Const LBS_HASSTRINGS = &H40&
  142. Global Const LBS_USETABSTOPS = &H80&
  143. Global Const LBS_NOINTEGRALHEIGHT = &H100&
  144. Global Const LBS_MULTICOLUMN = &H200&
  145. Global Const LBS_WANTKEYBOARDINPUT = &H400&
  146. Global Const LBS_EXTENDEDSEL = &H800&
  147. Global Const LBS_DISABLENOSCROLL = &H1000&
  148. Global Const LBS_STANDARD = (LBS_NOTIFY Or LBS_SORT Or WS_VSCROLL Or WS_BORDER)
  149.  
  150. ' **************************
  151. ' *    Combo Box Styles    *
  152. ' *  |use with GWL_STYLE|  *
  153. ' **************************
  154. Global Const CBS_SIMPLE = &H1&
  155. Global Const CBS_DROPDOWN = &H2&
  156. Global Const CBS_DROPDOWNLIST = &H3&
  157. Global Const CBS_OWNERDRAWFIXED = &H10&
  158. Global Const CBS_OWNERDRAWVARIABLE = &H20&
  159. Global Const CBS_AUTOHSCROLL = &H40&
  160. Global Const CBS_OEMCONVERT = &H80&
  161. Global Const CBS_SORT = &H100&
  162. Global Const CBS_HASSTRINGS = &H200&
  163. Global Const CBS_NOINTEGRALHEIGHT = &H400&
  164. Global Const CBS_DISABLENOSCROLL = &H800&
  165.  
  166. ' **************************
  167. ' *    Scroll Box Styles   *
  168. ' *  |use with GWL_STYLE|  *
  169. ' **************************
  170. Global Const SBS_HORZ = &H0&
  171. Global Const SBS_VERT = &H1&
  172. Global Const SBS_TOPALIGN = &H2&
  173. Global Const SBS_LEFTALIGN = &H2&
  174. Global Const SBS_BOTTOMALIGN = &H4&
  175. Global Const SBS_RIGHTALIGN = &H4&
  176. Global Const SBS_SIZEBOXTOPLEFTALIGN = &H2&
  177. Global Const SBS_SIZEBOXBOTTOMRIGHTALIGN = &H4&
  178. Global Const SBS_SIZEBOX = &H8&
  179.  
  180. ' ************************
  181. ' * Edit Control Styles  *
  182. ' * |use with GWL_STYLE| *
  183. ' ************************
  184. Global Const ES_LEFT = &H0&
  185. Global Const ES_CENTER = &H1&
  186. Global Const ES_RIGHT = &H2&
  187. Global Const ES_MULTILINE = &H4&
  188. Global Const ES_UPPERCASE = &H8&
  189. Global Const ES_LOWERCASE = &H10&
  190. Global Const ES_PASSWORD = &H20&
  191. Global Const ES_AUTOVSCROLL = &H40&
  192. Global Const ES_AUTOHSCROLL = &H80&
  193. Global Const ES_NOHIDESEL = &H100&
  194. Global Const ES_OEMCONVERT = &H400&
  195. Global Const ES_READONLY = &H800&
  196. Global Const ES_WANTRETURN = &H1000&
  197.  
  198. ' *************************
  199. ' * Static Control Styles *
  200. ' * |use with GWL_STYLE|  *
  201. ' *************************
  202. Global Const SS_LEFT = &H0&
  203. Global Const SS_CENTER = &H1&
  204. Global Const SS_RIGHT = &H2&
  205. Global Const SS_ICON = &H3&
  206. Global Const SS_BLACKRECT = &H4&
  207. Global Const SS_GRAYRECT = &H5&
  208. Global Const SS_WHITERECT = &H6&
  209. Global Const SS_BLACKFRAME = &H7&
  210. Global Const SS_GRAYFRAME = &H8&
  211. Global Const SS_WHITEFRAME = &H9&
  212. Global Const SS_USERITEM = &HA&
  213. Global Const SS_SIMPLE = &HB&
  214. Global Const SS_LEFTNOWORDWRAP = &HC&
  215. Global Const SS_NOPREFIX = &H80&
  216.